gtk4.git
11 years agoAvoid deprecation warnings
Matthias Clasen [Tue, 24 Jun 2014 12:21:29 +0000 (08:21 -0400)]
Avoid deprecation warnings

We know regions are deprecated, no need to warn about it here.

11 years agoAdwaita: set the correct indicator color for reorderable hover tabs
Lapo Calamandrei [Tue, 24 Jun 2014 12:04:26 +0000 (14:04 +0200)]
Adwaita: set the correct indicator color for reorderable hover tabs

11 years agoAdwaita: only side borders for reorderable tabs
Lapo Calamandrei [Tue, 24 Jun 2014 11:42:13 +0000 (13:42 +0200)]
Adwaita: only side borders for reorderable tabs

11 years agoRequire GLib 2.41.1 (for G_PARAM_EXPLICIT_NOTIFY)
Adam Dingle [Tue, 24 Jun 2014 10:48:47 +0000 (06:48 -0400)]
Require GLib 2.41.1 (for G_PARAM_EXPLICIT_NOTIFY)

11 years agoAdwaita: added active state to the switch slider
Lapo Calamandrei [Tue, 24 Jun 2014 08:38:03 +0000 (10:38 +0200)]
Adwaita: added active state to the switch slider

11 years agoAdwaita: comment out button separators removal
Lapo Calamandrei [Tue, 24 Jun 2014 08:28:19 +0000 (10:28 +0200)]
Adwaita: comment out button separators removal

...after reading #gnome-design scrollbark, since a consensus on how to achieve
this has not been reached yet.

11 years agoAdwaita: fix view check/radio selected state.
Lapo Calamandrei [Tue, 24 Jun 2014 08:25:49 +0000 (10:25 +0200)]
Adwaita: fix view check/radio selected state.

11 years agoAdwaita: disable separators in buttons
Lapo Calamandrei [Tue, 24 Jun 2014 07:28:29 +0000 (09:28 +0200)]
Adwaita: disable separators in buttons

11 years agogdkwindow: Don't leak the surface in gdk_cairo_create()
Colomban Wendling [Tue, 24 Jun 2014 01:37:59 +0000 (03:37 +0200)]
gdkwindow: Don't leak the surface in gdk_cairo_create()

11 years agoAdd a test for async icon loading
Matthias Clasen [Tue, 24 Jun 2014 01:24:41 +0000 (21:24 -0400)]
Add a test for async icon loading

11 years agogtkmain: Rearrange code
Jasper St. Pierre [Mon, 23 Jun 2014 21:55:55 +0000 (17:55 -0400)]
gtkmain: Rearrange code

Prevent a segfault in unknown circumstances, and break the ignore
deprecations wrapper out from the if statement so that we don't
cover too much ground by accident.

11 years agogtkwidget: Actually mark set_double_buffered as deprecated
Jasper St. Pierre [Mon, 23 Jun 2014 21:36:43 +0000 (17:36 -0400)]
gtkwidget: Actually mark set_double_buffered as deprecated

11 years agoRevert "gtkwidget: Widgets are now always double-buffered"
Jasper St. Pierre [Mon, 23 Jun 2014 21:36:16 +0000 (17:36 -0400)]
Revert "gtkwidget: Widgets are now always double-buffered"

This reverts commit b875572f2af532b0e8f2dc368f8dc824b5f92724.

Apps like Abiword, gnumeric and gnome-chess, and toolkits like
ClutterGTK were all using this for various purposes, and this made them
break. Bring back this feature for now.

It still won't work under Wayland.

11 years agogdkwindow: Allow calling gdk_cairo_create outside of a "paint"
Jasper St. Pierre [Mon, 23 Jun 2014 21:33:14 +0000 (17:33 -0400)]
gdkwindow: Allow calling gdk_cairo_create outside of a "paint"

Apps had quite a bit of difficulty getting used to the new rules.
While we weren't expecting anything too deadly, it seemed that
gnumeric and Abiword both used gdk_cairo_create like this.

11 years agogdkwindow: Remove extra arguments from process_updates_recurse_helper
Jasper St. Pierre [Mon, 23 Jun 2014 20:15:48 +0000 (16:15 -0400)]
gdkwindow: Remove extra arguments from process_updates_recurse_helper

These can easily be calculated inside the function.

11 years agogdkwindow: Don't do some extra work
Jasper St. Pierre [Mon, 23 Jun 2014 20:12:45 +0000 (16:12 -0400)]
gdkwindow: Don't do some extra work

We can do an early return in some specific cases before we need to
create and clip a cairo region.

11 years agogdkwindow: Remove an unused variable
Jasper St. Pierre [Mon, 23 Jun 2014 20:11:56 +0000 (16:11 -0400)]
gdkwindow: Remove an unused variable

11 years agogdkwindow: Make the precondition of gdk_window_add_damage clearer
Jasper St. Pierre [Mon, 23 Jun 2014 16:29:55 +0000 (12:29 -0400)]
gdkwindow: Make the precondition of gdk_window_add_damage clearer

11 years agogdkwindow: Simplify check for damaging offscreen windows
Jasper St. Pierre [Mon, 23 Jun 2014 16:23:48 +0000 (12:23 -0400)]
gdkwindow: Simplify check for damaging offscreen windows

If a window both has an impl and its impl_window is of type offscreen,
that must mean that it is the offscreen window, and the impl window is
itself. We can reduce the indirection here and make it more clear.

11 years agogdkwindow: Make gdk_window_add_damage more private
Jasper St. Pierre [Mon, 23 Jun 2014 16:22:33 +0000 (12:22 -0400)]
gdkwindow: Make gdk_window_add_damage more private

11 years agoGtkIconTheme: Copy all fields in icon_info_dup
Matthias Clasen [Mon, 23 Jun 2014 16:20:59 +0000 (12:20 -0400)]
GtkIconTheme: Copy all fields in icon_info_dup

This functionality is only exercised by gnome-shell, currently.
Therefore, forgetting to copy a field here means an instant
gnome-shell crash :-(. More tests needed.

11 years agoGtkIconTheme: Be more careful when warning
Matthias Clasen [Mon, 23 Jun 2014 16:13:22 +0000 (12:13 -0400)]
GtkIconTheme: Be more careful when warning

It sucks when printing a warning causes gnome-shell to crash,
so be more careful about icon names being NULL here.

11 years agoGtkIconTheme: keep misplaced symbolics working
Matthias Clasen [Mon, 23 Jun 2014 11:05:29 +0000 (07:05 -0400)]
GtkIconTheme: keep misplaced symbolics working

Recent changes made it a breaking mistake to install symbolic icons
of the wrong size into a theme directory, or into the legacy unthemed
icon location.

Since this change affects many apps, do the extra work to keep these
icons working, but emit warnings, in the hope that this will lead to
cleaning up the mess over time.

11 years agoMove some comments around
Matthias Clasen [Mon, 23 Jun 2014 02:04:00 +0000 (22:04 -0400)]
Move some comments around

11 years agoSome documentation rewording
Matthias Clasen [Sun, 22 Jun 2014 20:46:11 +0000 (16:46 -0400)]
Some documentation rewording

11 years agoAdwaita: Use rtl variants of pan-end when needed
Matthias Clasen [Sun, 22 Jun 2014 18:12:29 +0000 (14:12 -0400)]
Adwaita: Use rtl variants of pan-end when needed

The -gtk-icontheme() function not have any automatism for
symbolic or rtl variants built-in, instead, we expect the theme
to use selectors to provide the right icon for each situation.

11 years agowidget-factory: Fix another icon size problem
Matthias Clasen [Sun, 22 Jun 2014 17:32:50 +0000 (13:32 -0400)]
widget-factory: Fix another icon size problem

0 is still not a valid icon size.

11 years agowin32: Drop remnants of def files
Matthias Clasen [Sun, 22 Jun 2014 17:22:43 +0000 (13:22 -0400)]
win32: Drop remnants of def files

We no longer have .def files, so don't refer to them from the
win32 build machinery. Patch by Cilyan Olowen

11 years agoplacessidebar: Use symbolic name for symbolic icon
Bastien Nocera [Thu, 19 Jun 2014 12:11:22 +0000 (14:11 +0200)]
placessidebar: Use symbolic name for symbolic icon

https://bugzilla.gnome.org/show_bug.cgi?id=731908

11 years agoDocs: Reword deprecation notes
Matthias Clasen [Sun, 22 Jun 2014 16:10:46 +0000 (12:10 -0400)]
Docs: Reword deprecation notes

Mainly, make sure that deprecated properties are
documented as such. In this case: double-buffered.

11 years agonotify test: Skip GtkWidget::double-buffered
Matthias Clasen [Sun, 22 Jun 2014 16:09:52 +0000 (12:09 -0400)]
notify test: Skip GtkWidget::double-buffered

This property is now deprecated, and ignored, thus: no notification.

11 years agowidget-factory: Fix an icon size problem
Matthias Clasen [Fri, 20 Jun 2014 21:17:07 +0000 (17:17 -0400)]
widget-factory: Fix an icon size problem

0 is not a valid icon size, and setting it has unpredictable
results. Replace it by 1, which is the right icon size to use
in buttons.

11 years agoGtkCellRendererPixbuf: Set force_scale_pixbuf
Matthias Clasen [Fri, 20 Jun 2014 22:34:06 +0000 (18:34 -0400)]
GtkCellRendererPixbuf: Set force_scale_pixbuf

The recent icon theme scaling changes make the code more
sensitive to mis-sized icons (e.g. application icons in
the app chooser). A single row whose size gets blown out
of proportion by a big icon is never wanted in a list.
We can avoid this situation by telling GtkIconHelper to
force-scale the pixbuf to the requested size.

11 years agoGtkIconHelper: use FORCE_SCALE when force_scale_pixbuf is set
Matthias Clasen [Sun, 22 Jun 2014 15:14:41 +0000 (11:14 -0400)]
GtkIconHelper: use FORCE_SCALE when force_scale_pixbuf is set

When force_scale_pixbuf is set, the icon helper will scale the
icon to the requested size (either the pixel size, or the resolved
icon size), so we can just as well instruct the icon theme code
to do the scaling for us.

11 years agoGtkIconTheme: Drop an unused variable
Matthias Clasen [Fri, 20 Jun 2014 19:52:48 +0000 (15:52 -0400)]
GtkIconTheme: Drop an unused variable

We no longer need a separate field for symbolic icon size,
now that we are using the directory size.

11 years agoGtkIconTheme: Load symbolic icons at the same size
Matthias Clasen [Fri, 20 Jun 2014 19:47:00 +0000 (15:47 -0400)]
GtkIconTheme: Load symbolic icons at the same size

Reuse the scale information that we have from loading icons
normally, when loading a symbolic icon, so that we apply the
same size constraints.

This commit assumes that svgs have the nominal size of the
directory they are in, which will be true for all current
symbolic icons.

11 years agoAdapt icontheme tests
Matthias Clasen [Fri, 20 Jun 2014 18:30:36 +0000 (14:30 -0400)]
Adapt icontheme tests

With our new, improved icon theme spec compliance, some of the
tests need updates to their expected outcomes.

11 years agoGtkIconInfo: Small struct packing improvement
Matthias Clasen [Sun, 22 Jun 2014 15:01:43 +0000 (11:01 -0400)]
GtkIconInfo: Small struct packing improvement

This makes the GtkIconInfo struct a bit smaller.

11 years agoGtkIconInfo: Drop an unused field
Matthias Clasen [Fri, 20 Jun 2014 18:58:44 +0000 (14:58 -0400)]
GtkIconInfo: Drop an unused field

The GtkIconInfo threshold field was never used, so lets not
carry it around.

11 years agoGtkIconTheme: Respect limits in theme dirs
Matthias Clasen [Fri, 20 Jun 2014 18:17:47 +0000 (14:17 -0400)]
GtkIconTheme: Respect limits in theme dirs

Previously, we were taking thresholds and min/max sizes into
account when choosing the best theme dir, but when it came
to loading the icon, we always scaled icons from scalable
directories all the way, ignoring the min/max size limits.

This commit changes things around so that we now load icons
in Threshold directories at their nominal size, and scale
icons in Scalable directories only up to the specified limits.

To override this and keep the previous behaviour of scaling
all the way to the desired size, use the GTK_ICON_THEME_FORCE_SIZE
flag.

11 years agogdkwindow: Provide a default implementation of process_updates_recurse
Jasper St. Pierre [Sun, 22 Jun 2014 13:28:13 +0000 (09:28 -0400)]
gdkwindow: Provide a default implementation of process_updates_recurse

As a quick code cleanup.

11 years agogdkwindow-broadway: Move the dirty flag setting to end_paint
Jasper St. Pierre [Sun, 22 Jun 2014 13:26:01 +0000 (09:26 -0400)]
gdkwindow-broadway: Move the dirty flag setting to end_paint

This is where it belongs -- process_updates_recurse is the wrong place
for it.

11 years agogdkwindow: Move a variable closer to where it's used
Jasper St. Pierre [Sun, 22 Jun 2014 13:21:35 +0000 (09:21 -0400)]
gdkwindow: Move a variable closer to where it's used

To make the code clearer.

11 years agogdkwindow: Remove an unused variable
Jasper St. Pierre [Sun, 22 Jun 2014 13:21:19 +0000 (09:21 -0400)]
gdkwindow: Remove an unused variable

11 years agoGtkSwitch: Implement hover for GtkSwitch
Matthias Clasen [Sun, 22 Jun 2014 01:34:50 +0000 (21:34 -0400)]
GtkSwitch: Implement hover for GtkSwitch

This makes switches more similar to other activatable widgets
like buttons or scales.

11 years agogdkwidow: Make queue_antiexpose optional
Jasper St. Pierre [Sat, 21 Jun 2014 22:43:28 +0000 (18:43 -0400)]
gdkwidow: Make queue_antiexpose optional

11 years agogdkwindow-win32: Remove queue_antiexpose implementation
Jasper St. Pierre [Sat, 21 Jun 2014 22:36:51 +0000 (18:36 -0400)]
gdkwindow-win32: Remove queue_antiexpose implementation

Since the Win32 code never actually called InvalidateRgn or used the
Win32 update area at all, that meant the only thing that could possibly
invalidate the window was the Win32 window manager as part of scrolling
or resizing, which would also send it a WM_PAINT message.

But the WM_PAINT handling called BeginPaint / EndPaint, which clears the
update area completely! We also draw out-of-band, not directly when
handling WM_PAINT, so there's no way that the update area inside the
Win32 WM would match our local one.

There is no possible way that this queue_antiexpose implementation could
do anything. Remove it.

11 years agogdkevents-win32: Remove dead code
Jasper St. Pierre [Sat, 21 Jun 2014 22:26:41 +0000 (18:26 -0400)]
gdkevents-win32: Remove dead code

11 years agogdkwindow: Don't bother with a return parameter for queue_antiexpose
Jasper St. Pierre [Sat, 21 Jun 2014 22:03:56 +0000 (18:03 -0400)]
gdkwindow: Don't bother with a return parameter for queue_antiexpose

Standard refcounting works perfectly well. Don't give us the opportunity
for more memory leaks.

11 years agogdkwindow-broadway: Squash memory leak
Jasper St. Pierre [Sat, 21 Jun 2014 22:01:40 +0000 (18:01 -0400)]
gdkwindow-broadway: Squash memory leak

We don't need to hang on to the update_area.

11 years agogdkwindow-broadway: Make queue_antiexpose implementation private
Jasper St. Pierre [Sat, 21 Jun 2014 21:59:48 +0000 (17:59 -0400)]
gdkwindow-broadway: Make queue_antiexpose implementation private

11 years agogdkwindow-wayland: Attach new buffers and submit damage in end_paint
Jasper St. Pierre [Sat, 21 Jun 2014 21:29:08 +0000 (17:29 -0400)]
gdkwindow-wayland: Attach new buffers and submit damage in end_paint

process_updates_recurse is simply the wrong place for it to be.

11 years agogdkwindow-wayland: Rename listener -> frame_listener
Jasper St. Pierre [Sat, 21 Jun 2014 21:33:09 +0000 (17:33 -0400)]
gdkwindow-wayland: Rename listener -> frame_listener

Don't pollute the static namespace here.

11 years agodocs: add missing apostrophe
Michael Catanzaro [Sat, 21 Jun 2014 17:15:42 +0000 (12:15 -0500)]
docs: add missing apostrophe

11 years agogdkwindow: Correct a signature
Jasper St. Pierre [Sat, 21 Jun 2014 15:25:16 +0000 (11:25 -0400)]
gdkwindow: Correct a signature

We removed the parameter from callers and from the implementation, but
not from the signature up top. I didn't notice because the branch I was
working on removed the signature entirely.

11 years agogdkwindow: Remove an extra region copy
Jasper St. Pierre [Sat, 21 Jun 2014 14:33:40 +0000 (10:33 -0400)]
gdkwindow: Remove an extra region copy

This code is only called with the current paint region as its argument.
Instead of having to copy it and do a no-op intersect against itself,
just use the current paint directly.

11 years agogdkwindow: Clean up code
Jasper St. Pierre [Sat, 21 Jun 2014 14:16:14 +0000 (10:16 -0400)]
gdkwindow: Clean up code

Introduce a temporary to make the code a bit more clear under these cases.

11 years agogdkwindow: Clean up formatting
Jasper St. Pierre [Sat, 21 Jun 2014 14:16:58 +0000 (10:16 -0400)]
gdkwindow: Clean up formatting

Tabs to spaces, add some whitespace.

11 years agogdkwindow: Add some extra documentation to gdk_cairo_create
Jasper St. Pierre [Sat, 21 Jun 2014 13:58:20 +0000 (09:58 -0400)]
gdkwindow: Add some extra documentation to gdk_cairo_create

Mention the need to wrap the function inside
gdk_window_begin_paint_region and gdk_window_end_paint.

11 years agowidgetpath: Deprecate regions
Benjamin Otte [Sat, 21 Jun 2014 13:38:38 +0000 (15:38 +0200)]
widgetpath: Deprecate regions

This is a foolowup to d80bf0790d0903ba2825f306b6f7435529f922e2

11 years agogtkwidget: Add a warning about set_double_buffered
Jasper St. Pierre [Sat, 21 Jun 2014 04:31:17 +0000 (00:31 -0400)]
gtkwidget: Add a warning about set_double_buffered

As requested on the mailing list.

11 years agotestwindows: Remove another reference to set_double_buffered
Jasper St. Pierre [Sat, 21 Jun 2014 04:30:59 +0000 (00:30 -0400)]
testwindows: Remove another reference to set_double_buffered

11 years agogtktrayicon-x11: Stop using set_double_buffered
Jasper St. Pierre [Sat, 21 Jun 2014 04:30:07 +0000 (00:30 -0400)]
gtktrayicon-x11: Stop using set_double_buffered

There's nothing better we can do for this case, now that we always
redirect drawing to a temporary pixmap. Maybe since this is already
X11-specific code, we should just do everything with Xlib directly.

11 years agoAdwaita: Fix highlight on check buttons
Matthias Clasen [Sat, 21 Jun 2014 03:17:53 +0000 (23:17 -0400)]
Adwaita: Fix highlight on check buttons

The .button style class does not apply to check and radio
buttons, and .check only applies to menuitems.

11 years agogdkwindow: Squash a leak in the subsurface case
Jasper St. Pierre [Sat, 21 Jun 2014 00:47:59 +0000 (20:47 -0400)]
gdkwindow: Squash a leak in the subsurface case

cairo_surface_create_for_rectangle takes a ref on the parent surface,
so we need to drop ours.

Rename get_window_surface to ref_window_surface to make the code more
clear and to stop this error from happening again.

11 years agogdkwindow: Don't create a subsurface if we don't need to
Jasper St. Pierre [Sat, 21 Jun 2014 00:46:49 +0000 (20:46 -0400)]
gdkwindow: Don't create a subsurface if we don't need to

In the case we have a native window, we don't need to crop it to a
non-native subrectangle, as abs_x / abs_y / width / height are all 0.

11 years agogdkwindow: Remove the ability to call begin_paint_region more than once
Jasper St. Pierre [Sat, 21 Jun 2014 00:20:14 +0000 (20:20 -0400)]
gdkwindow: Remove the ability to call begin_paint_region more than once

Previously, each begin_paint_region added to a stack of current paints,
and when end_paint was called, the paint was popped off of the stack and
the surface was composited into the parent paint surface.

However, the code was broken in the case of a backend like Wayland which
didn't keep track of nested calls and simply wiped and returned the
native impl backing surface every time.

Since this feature is flat out unused by GTK+ and we don't want to
really support tricksy things like these for other clients, just remove
the feature. If somebody does call begin_paint_region more than once,
warn and return without doing anything.

11 years agogdkwindow: Remove the internal cairo_surface used for out-of-band painting
Jasper St. Pierre [Fri, 20 Jun 2014 15:55:09 +0000 (11:55 -0400)]
gdkwindow: Remove the internal cairo_surface used for out-of-band painting

Traditionally, the way painting was done in GTK+ was with the
"expose-event" handler, where you'd use GDK methods to do drawing on
your surface. In GTK+ 2.24, we added cairo support with gdk_cairo_create,
so you could paint your graphics with cairo.

Since then, we've added client-side windows, double buffering, the paint
clock, and various other enhancements, and the modern way to do drawing
is to connect to the "draw" signal on GtkWidget, which hands you a
cairo_t. To do double-buffering, the cairo_t we hand you is actually on
a secret surface, not the actual backing store of the window, and when
the draw handler completes we blit it into the main backing store
atomically.

The code to do this is with the APIs gdk_window_begin_paint_region,
which creates the temporary surface, and gdk_window_end_paint which
blits it back into the backing store. GTK+'s implementation of the
"draw" signal uses these APIs.

We've always sort-of supported people calling gdk_cairo_create
"outside" of a begin_paint / end_paint like old times, but then you're
not getting the benefit of double-buffering, and it's harder for GDK to
optimize.

Additionally, newer backends like Mir and Wayland can't actually support
this model, since they're based on double-buffering and swapping buffers
at various points in time. If we hand you a random cairo_t, we have no
idea when is a good time to swap.

Remove support for this.

This is technically a GDK API break: a warning is added in cases where
gdk_cairo_create is called outside of a paint cycle, and the returned
surface is a dummy that won't ever be composited back onto the main
surface. Testing with complex applications like Ardour didn't produce
any warnings.

11 years agogtkwidget: Widgets are now always double-buffered
Jasper St. Pierre [Fri, 20 Jun 2014 15:11:24 +0000 (11:11 -0400)]
gtkwidget: Widgets are now always double-buffered

gtk_widget_set_double_buffered is now deprecated, and we don't support
non-double-buffered widgets. This means that under normal circumstances,
paints are never outside of a begin_paint / end_paint sequence, which
natively-double-buffered backends like Wayland can't possibly support.

11 years agogdkwindow: Deprecate gdk_window_flush
Jasper St. Pierre [Fri, 20 Jun 2014 15:09:42 +0000 (11:09 -0400)]
gdkwindow: Deprecate gdk_window_flush

The function does nothing.

11 years agoGtkIconTheme: Drop an unused function
Matthias Clasen [Fri, 20 Jun 2014 19:46:25 +0000 (15:46 -0400)]
GtkIconTheme: Drop an unused function

11 years agoGtkIconTheme: Small cleanup
Matthias Clasen [Fri, 20 Jun 2014 19:26:15 +0000 (15:26 -0400)]
GtkIconTheme: Small cleanup

Make the default symbolic colors a little more readable in the code.

11 years agoGtkIconTheme: Trivial cleanup
Matthias Clasen [Fri, 20 Jun 2014 19:17:18 +0000 (15:17 -0400)]
GtkIconTheme: Trivial cleanup

Drop the _-prefix from a static function.
We've agreed to no stop using those prefixes.

11 years agoAvoid a compiler warning
Matthias Clasen [Fri, 20 Jun 2014 18:17:24 +0000 (14:17 -0400)]
Avoid a compiler warning

The name_offset variable is indeed unused.

11 years agoBig spinner
Matthias Clasen [Wed, 18 Jun 2014 17:36:23 +0000 (13:36 -0400)]
Big spinner

11 years agoGtkIconTheme: Don't create empty IconThemeDir structs
Matthias Clasen [Fri, 20 Jun 2014 16:11:55 +0000 (12:11 -0400)]
GtkIconTheme: Don't create empty IconThemeDir structs

Starting gtk3-demo currently creates ~1200 of these, most
of them for nonexisting directories. Lets try to avoid that.

11 years agoGtkIconCache: Add api to find if directories are empty
Matthias Clasen [Fri, 20 Jun 2014 16:11:22 +0000 (12:11 -0400)]
GtkIconCache: Add api to find if directories are empty

This will help in not creating structs for tons of empty
directories.

11 years agoGtkStatusbar: Add some space between the frame and the label
Matthias Clasen [Fri, 20 Jun 2014 15:44:51 +0000 (11:44 -0400)]
GtkStatusbar: Add some space between the frame and the label

Looks better this way.

11 years agoAdwaita: check/radio selector simplification
Lapo Calamandrei [Fri, 20 Jun 2014 15:25:19 +0000 (17:25 +0200)]
Adwaita: check/radio selector simplification

11 years agowidget factory: Use a property action for the toolbar toggle
Matthias Clasen [Fri, 20 Jun 2014 15:13:33 +0000 (11:13 -0400)]
widget factory: Use a property action for the toolbar toggle

This is slightly more elegant than doing it manually.

11 years agowidget factory: Add a statusbar
Matthias Clasen [Fri, 20 Jun 2014 15:10:22 +0000 (11:10 -0400)]
widget factory: Add a statusbar

A widget that is not represented in the widget factory is likely
to not get proper attention from theme authors.

11 years agodocs: Drop image references for stock items
Matthias Clasen [Fri, 20 Jun 2014 14:53:36 +0000 (10:53 -0400)]
docs: Drop image references for stock items

Most of those images are no longer in our tree, so just
say which ones have icons and rtl variants, instead of
showing it.

11 years agowayland: Prevent stale paints and weird artifacts when using Weston
Jasper St. Pierre [Fri, 20 Jun 2014 12:55:19 +0000 (08:55 -0400)]
wayland: Prevent stale paints and weird artifacts when using Weston

Weston releases buffers almost immediately after they're done, which
means that GTK+ doesn't use a temporary surface and instead paints
directly onto the SHM backing store that Weston will use.

Normally, after painting to the temporary surface, GTK+ *replaces*
the existing backing surface with CAIRO_OPERATOR_SOURCE. However,
if we immediately paint to the backing surface, it might have junk
from the last paint in it. So clear out the backing surface whenever
somebody calls begin_paint_region().

Maybe we should just always use the temporary surface like the X11
codepath, since that prevents us from having to do weird things like
this, but oh well.

11 years agoGtkIconTheme: Keep gtk_icon_theme_add_resource_path private for now
Matthias Clasen [Fri, 20 Jun 2014 12:50:31 +0000 (08:50 -0400)]
GtkIconTheme: Keep gtk_icon_theme_add_resource_path private for now

We need to discuss some details of the semantics before
we can make this public.

11 years agoRevert "Document gtk_icon_theme_add_resource_path"
Matthias Clasen [Fri, 20 Jun 2014 12:46:42 +0000 (08:46 -0400)]
Revert "Document gtk_icon_theme_add_resource_path"

This reverts commit 988b6b483dc9c21d050161d26652bb1006b9c686.

11 years agoRevert "Deprecate gtk_icon_theme_add_builtin_icon"
Matthias Clasen [Fri, 20 Jun 2014 12:46:24 +0000 (08:46 -0400)]
Revert "Deprecate gtk_icon_theme_add_builtin_icon"

This reverts commit 923eeda2d3cae13d02b0a9d2e5774b12eed999e0.

11 years agoDeprecate gtk_icon_theme_add_builtin_icon
Matthias Clasen [Fri, 20 Jun 2014 04:49:25 +0000 (00:49 -0400)]
Deprecate gtk_icon_theme_add_builtin_icon

11 years agoDocument gtk_icon_theme_add_resource_path
Matthias Clasen [Fri, 20 Jun 2014 04:46:09 +0000 (00:46 -0400)]
Document gtk_icon_theme_add_resource_path

11 years agoAdapt the icontheme tests
Matthias Clasen [Fri, 20 Jun 2014 04:39:59 +0000 (00:39 -0400)]
Adapt the icontheme tests

With the new way of dealing with the legacy stock icons,
the builtin test needed some small updates.

11 years agoGtkIconTheme: Include legacy stock icons from resources
Matthias Clasen [Fri, 20 Jun 2014 05:04:16 +0000 (01:04 -0400)]
GtkIconTheme: Include legacy stock icons from resources

Add /org/gtk/libgtk/icons as a resource path, and ensure
that we always parse an index.theme file for hicolor which
makes the builtin icons available as part of the hicolor theme.

11 years agoGtkIconTheme: Allow loading icons from resources
Matthias Clasen [Fri, 20 Jun 2014 04:35:57 +0000 (00:35 -0400)]
GtkIconTheme: Allow loading icons from resources

We add a new API, gtk_icon_theme_add_resource_path, which
can be used to add resource path as a base location for
icon theme content, similar to gtk_icon_theme_append_search_path.

11 years agoGtkIconTheme: Drop the all_icons hash table
Matthias Clasen [Fri, 20 Jun 2014 01:39:45 +0000 (21:39 -0400)]
GtkIconTheme: Drop the all_icons hash table

It is not used anywhere anymore.

11 years agoGtkIconTheme: Stop using the all_icons hash table
Matthias Clasen [Fri, 20 Jun 2014 01:37:01 +0000 (21:37 -0400)]
GtkIconTheme: Stop using the all_icons hash table

This hash table was used in gtk_icon_theme_has_icon; we can
implement that function just as well without it and save some
memory.

11 years agoicontheme: Add some more tests
Matthias Clasen [Fri, 20 Jun 2014 00:56:06 +0000 (20:56 -0400)]
icontheme: Add some more tests

This test checks that gtk_icon_theme_list_icons and
gtk_icon_theme_has_icon work as expected.

11 years agoFormatting fixes
Matthias Clasen [Thu, 19 Jun 2014 23:42:53 +0000 (19:42 -0400)]
Formatting fixes

11 years agoGtkIconTheme: Drop the code for parsing .icon files
Matthias Clasen [Wed, 18 Jun 2014 02:36:44 +0000 (22:36 -0400)]
GtkIconTheme: Drop the code for parsing .icon files

Modern icon themes don't ship .icon files anyway.

11 years agoGtkIconTheme: Deprecate functionality related to .icon files
Matthias Clasen [Wed, 18 Jun 2014 02:23:19 +0000 (22:23 -0400)]
GtkIconTheme: Deprecate functionality related to .icon files

This functionality is not used at all in modern icon themes.

11 years agoDrop the builtin icon cache
Matthias Clasen [Wed, 18 Jun 2014 02:06:08 +0000 (22:06 -0400)]
Drop the builtin icon cache

We don't need it anymore, now that the non-standard stock icons
are using resources.

11 years agoAdd non-standard stock icons as resources
Matthias Clasen [Wed, 18 Jun 2014 01:32:50 +0000 (21:32 -0400)]
Add non-standard stock icons as resources

This will allow us to remove the builtin icon cache in the future
while keeping the deprecated stock icons working.

11 years agoDrop all standard icons from the builtin icontheme
Matthias Clasen [Tue, 17 Jun 2014 23:17:36 +0000 (19:17 -0400)]
Drop all standard icons from the builtin icontheme

We're going to require a complete icon theme, and we have
a test that checks for all the icons we use, so there is
no need to include all these fallback icons.